package fifteenth.ClassLoader;

public class 取得类加载器 {
    public static void main(String[] args) {
        Class<?> cls = ClassLoaderDemo.class;
        System.out.println(cls.getClassLoader());
        System.out.println(cls.getClassLoader().getParent());
    }
}
/**
 * 上面的程序中，不仅找到了指定的类加载器，还找到了它的父类加载器
 * 如果清除了类加载器的概念，实际上也就清楚一点：用户可以定义属于自己的类加载器。
 * 如果想要定义属于自己的类加载器，那么可以直接继承ClassLoader类完成。
 * public abstract class ClassLoader extends Object
 * ClassLoader本身就是一个抽象类，但是这个类本身没有抽象方法。目的是为了让用户去继承使用。
 * 但是不能够直接使用。如果已经得到程序类的文件信息，那么可以使用lcassLoader类的以下方法加载
 */
/*
D:\WorkSpaces\Java\jdk-21\bin\java.exe "-javaagent:D:\Software\IntelliJ IDEA\IntelliJ IDEA 2023.3.2\lib\idea_rt.jar=61430:D:\Software\IntelliJ IDEA\IntelliJ IDEA 2023.3.2\bin" -Dfile.encoding=UTF-8 -Dsun.stdout.encoding=UTF-8 -Dsun.stderr.encoding=UTF-8 -classpath D:\WorkSpaces\JavaDevelopBase_start_329\out\production\JavaDevelopBase_start_329 fifteenth.ClassLoader.取得类加载器
jdk.internal.loader.ClassLoaders$AppClassLoader@36baf30c
jdk.internal.loader.ClassLoaders$PlatformClassLoader@b4c966a

Process finished with exit code 0

 */